Machine-to-machine (M2M) communications is a technology that realizes a network for collecting data from machines (e.g., sensors, smart meters, and/or other low-end devices) that are typically massively and densely deployed, and for transmitting events captured by those low-end devices to high-end applications. M2M networks may be wired or wireless and may have a relatively large geographical distribution (e.g., across a country or across the world). The high-end applications are typically responsible for translating the received raw machine data into meaningful information, for example to support decision making or automation. M2M communications typically do not involve direct human intervention and have exhibited a rapid increase in connection count.
M2M communications typically involve a large number of machines reporting to a small number of data destinations (also referred to as sinks). M2M data traffic may be characterized as low-rate, small-packet traffic. For example, a machine typically transmits at a low frequency (e.g., one transmission every few minutes or hours) and each transmission typically is a small amount of data (e.g., in the range of tens of bytes to hundreds of bytes). Machine traffic may arrive in batches, rather than as a more steady flow. Characteristics of M2M traffic present both challenges and opportunities for network traffic engineering.